#!/sbin/openrc-run
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

extra_commands="save panic try"
extra_started_commands="reload"

depend() {
	need localmount
	after bootmisc
	before net
	provide firewall
}

checkrules() {
	if [ ! -f ${FIREHOL_CONF} ]; then
		eerror "Not starting FireHOL. Create ${FIREHOL_CONF}"
		eerror "and fill it with some rules."
		eerror "man firehol.conf for more info."
		return 1
	fi
}

start() {
	checkrules || return 1
	ebegin "Starting FireHOL"
		/usr/sbin/firehol ${FIREHOL_CONF} start > /dev/null
	eend $? 
}

stop() {
	ebegin "Stopping FireHOL"
		/usr/sbin/firehol stop > /dev/null
	eend $?
}

restart() {
        ebegin "Restarting Firewall"
                svc_stop;
                svc_start;
        eend $?
}

try() {
	ebegin "Trying FireHOL configuration"
	/usr/sbin/firehol ${FIREHOL_CONF} try
	eend $?
}

status() {
	ebegin "Showing FireHOL status"
	/usr/sbin/firehol status
	eend $?
}

panic() {
	ebegin "FireHOL PANIC"
	/usr/sbin/firehol panic
	eend $?
}

save() {
	ebegin "Saving FireHOL configuration"
	/usr/sbin/firehol save
	eend $?
}
